增加上传血氧饱和度

FFIB 2 年之前
父节点
当前提交
6fff1a6322
共有 3 个文件被更改,包括 33 次插入2 次删除
  1. 5 2
      api/point_views.py
  2. 23 0
      equipment/migrations/0031_auto_20221128_1653.py
  3. 5 0
      equipment/models.py

+ 5 - 2
api/point_views.py

@@ -128,15 +128,17 @@ def mp_upload_temperature(request):
128 128
     sore_throat_status = request.POST.get('sore_throat_status', False)
129 129
     smell_taste_loss_status = request.POST.get('smell_taste_loss_status', False)
130 130
     diarrhea_status = request.POST.get('diarrhea_status', False)
131
+    blood_oxygen_saturation = request.POST.get('blood_oxygen_saturation', 100)
131 132
     is_filled = request.POST.get('is_filled', False)
132 133
 
133 134
     try:
134 135
         ipui = IsolationPointUserInfo.objects.get(user_id=userid, status=True)
135 136
     except IsolationPointUserInfo.DoesNotExist:
136
-        ThermometerMeasureLogInfo.objects.create(point_id='', macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status, is_filled=is_filled)
137
+        ThermometerMeasureLogInfo.objects.create(point_id='', macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status,
138
+        blood_oxygen_saturation=blood_oxygen_saturation, is_filled=is_filled)
137 139
         return response()
138 140
 
139
-    ThermometerMeasureLogInfo.objects.create(point_id=ipui.point_id, macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status, is_filled=is_filled)
141
+    ThermometerMeasureLogInfo.objects.create(point_id=ipui.point_id, macid=macid, user_id=userid, temperature=temperature, temperature_src=ThermometerMeasureLogInfo.MP, chg_sta=False, ignore_temperature=False, ignore_fever_temperature=False, upload_temperature_info='', dry_cough_status=dry_cough_status, weak_status=weak_status, sore_throat_status=sore_throat_status, smell_taste_loss_status=smell_taste_loss_status, diarrhea_status=diarrhea_status, blood_oxygen_saturation=blood_oxygen_saturation, is_filled=is_filled)
140 142
 
141 143
     ipui.observed_ymds = list(set(ipui.observed_ymds + [tc.local_string(format='%Y-%m-%d')]))
142 144
     ipui.observed_days = len(ipui.observed_ymds)
@@ -146,6 +148,7 @@ def mp_upload_temperature(request):
146 148
     ipui.sore_throat_status = sore_throat_status
147 149
     ipui.smell_taste_loss_status = smell_taste_loss_status
148 150
     ipui.diarrhea_status = diarrhea_status
151
+    ipui.blood_oxygen_saturation = blood_oxygen_saturation
149 152
     ipui.is_filled = is_filled
150 153
     ipui.last_submit_at = tc.utc_datetime()
151 154
     ipui.save()

+ 23 - 0
equipment/migrations/0031_auto_20221128_1653.py

@@ -0,0 +1,23 @@
1
+# Generated by Django 3.2.16 on 2022-11-28 08:53
2
+
3
+from django.db import migrations, models
4
+
5
+
6
+class Migration(migrations.Migration):
7
+
8
+    dependencies = [
9
+        ('equipment', '0030_auto_20221125_1912'),
10
+    ]
11
+
12
+    operations = [
13
+        migrations.AddField(
14
+            model_name='isolationpointuserinfo',
15
+            name='blood_oxygen_saturation',
16
+            field=models.IntegerField(default=100, help_text='血氧饱和度', verbose_name='blood_oxygen_saturation'),
17
+        ),
18
+        migrations.AddField(
19
+            model_name='thermometermeasureloginfo',
20
+            name='blood_oxygen_saturation',
21
+            field=models.IntegerField(default=100, help_text='血氧饱和度', verbose_name='blood_oxygen_saturation'),
22
+        ),
23
+    ]

+ 5 - 0
equipment/models.py

@@ -159,6 +159,7 @@ class IsolationPointUserInfo(BaseModelMixin):
159 159
     sore_throat_status = models.BooleanField(_(u'sore_throat_status'), default=False, help_text='是否咽痛')
160 160
     smell_taste_loss_status = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否嗅(味)觉减退')
161 161
     diarrhea_status = models.BooleanField(_(u'diarrhea_status'), default=False, help_text='是否腹泻')
162
+    blood_oxygen_saturation = models.IntegerField(_('blood_oxygen_saturation'), default=100, help_text='血氧饱和度')
162 163
     is_filled = models.BooleanField(_(u'is_filled'), default=False, help_text='是否填写身体状态')
163 164
 
164 165
     class Meta:
@@ -220,6 +221,7 @@ class IsolationPointUserInfo(BaseModelMixin):
220 221
             'sore_throat_status': self.sore_throat_status,
221 222
             'smell_taste_loss_status': self.smell_taste_loss_status,
222 223
             'diarrhea_status': self.diarrhea_status,
224
+            'blood_oxygen_saturation': self.blood_oxygen_saturation,
223 225
             'is_filled': self.is_filled,
224 226
             'last_submit_at': self.last_submit_at,
225 227
             'last_report_time': tc.local_string(utc_dt=self.last_submit_at, format='%m-%d %H:%M') if self.last_submit_at else '',
@@ -333,6 +335,7 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
333 335
     sore_throat_status = models.BooleanField(_(u'sore_throat_status'), default=False, help_text='是否咽痛')
334 336
     smell_taste_loss_status = models.BooleanField(_(u'smell_taste_loss_status'), default=False, help_text='是否嗅(味)觉减退')
335 337
     diarrhea_status = models.BooleanField(_(u'diarrhea_status'), default=False, help_text='是否腹泻')
338
+    blood_oxygen_saturation = models.IntegerField(_('blood_oxygen_saturation'), default=100, help_text='血氧饱和度')
336 339
     is_filled = models.BooleanField(_(u'is_filled'), default=False, help_text='是否填写身体状态')
337 340
 
338 341
     class Meta:
@@ -355,6 +358,7 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
355 358
             'sore_throat_status': self.sore_throat_status,
356 359
             'smell_taste_loss_status': self.smell_taste_loss_status,
357 360
             'diarrhea_status': self.diarrhea_status,
361
+            'blood_oxygen_saturation': self.blood_oxygen_saturation,
358 362
             'is_filled': self.is_filled,
359 363
             'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d'),
360 364
         }
@@ -370,6 +374,7 @@ class ThermometerMeasureLogInfo(BaseModelMixin):
370 374
             'sore_throat_status': self.sore_throat_status,
371 375
             'smell_taste_loss_status': self.smell_taste_loss_status,
372 376
             'diarrhea_status': self.diarrhea_status,
377
+            'blood_oxygen_saturation': self.blood_oxygen_saturation,
373 378
             'is_filled': self.is_filled,
374 379
             'created_at': tc.local_string(utc_dt=self.created_at, format='%Y-%m-%d %H:%M'),
375 380
         }